#ifndef PROVIDENT_BLACK_SCHOLES_HPP_
#define PROVIDENT_BLACK_SCHOLES_HPP_

#include <stdint.h>

#include <promote/HashMap.hpp>
#include <promote/TreapMap.hpp>

#include "VanillaOption.hpp"

namespace provident
{
    class BlackScholes
    {
    public:
        double valuate(VanillaOption const& option,
                       double const underlyerPrice,
                       double const volatility,
                       double const riskFreeRate);
    private:
        promote::HashMap<double,double> _expirySqrts;
    };
}

#endif /* PROVIDENT_BLACK_SCHOLES_HPP_ */

